package portal.web.delegate;

import java.util.List;

import portal.entidades.Articulo;
import portal.entidades.Compra;
import portal.entidades.Configuracion;
import portal.entidades.RankingArticulo;
import portal.entidades.Resultado;
import portal.entidades.Usuario;

public interface IPortalWebDelegate {

	// Login de usuarios.
	public Usuario login(String nombre, String password);

	// Configuraciones

	public List<Configuracion> listar();

	public void borrarConfiguracion(Long id);

	public void agregarConfiguracion(Configuracion configuracion);

	public void actualizarConfiguraciones(Configuracion configuracion);

	// BestSellers o Articulos
	
	public List<Articulo> listarArticlosBetSellers();
	
	public List<Articulo> listarArticlos();
	
	public Resultado actualizarRanking(List<RankingArticulo> ranking);

	// Compras

	public List<Compra> listarMisCompras(Long id_usuario);

	public List<Compra> listarCompras();
	
	public void agregarItemCompra(Long IdCompra, Long IdArticulo, Double precio, Integer cantidad);
	
	public void eliminarItemCompra(Long IdCompra, Long IdArticulo);

	public void checkoutCompra(Long idCompra, Double total);

	public void updateItemCompra(Long idCompra, Long idArticulo, Double cantidad);

	public Compra crearCompra(Compra c_nva);

}
